home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Adobe Graphics & Publishing SDK 1996 December
/
Adobe Graphics & Publishing SDK 1996 December.iso
/
mac
/
Premiere 4.2 SDK r3 Mac
/
Examples
/
.h files
/
PremiereBasic.r
< prev
next >
Wrap
Text File
|
1996-01-25
|
6KB
|
131 lines
//========================================================================================
//
// PremiereBasic.r - Types for Premiere plug-in resources.
//
// Part of the Adobe Premiere¬ 4.2 Plug-In Develoer's Toolkit. Use the information in this
// file for developing 'SPFX', 'VFlt', 'AFlt', 'ExpD', 'ExpM', 'ZooM', and 'DevC' modules.
//
// Header file written 11/3/93 by Bryan K. ╥Beaker╙ Ressler.
//
// Copyright ⌐ 1992-96, Adobe Systems Incorporated, all rights reserved worldwide.
//
// Version 1.00 11/3/93 Original version.
// Version 1.01 9/12/94 Updated for 4.0.
// Version 1.02 10/6/95 Updated Premiere for 4.2 and CodeWarrior7.
//
//========================================================================================
//========================================================================================
// Includes
//========================================================================================
#include "Types.r"
//----------------------------------------------------------------------------------------
// Used by SPFX modules to provide their plain text description. Use ID 1000.
//----------------------------------------------------------------------------------------
type 'TEXT' {
string;
};
//----------------------------------------------------------------------------------------
// Used by SPFX modules to specify their version. Current version is $0001. Use ID 1000.
//----------------------------------------------------------------------------------------
type 'FXvs' {
integer;
};
//----------------------------------------------------------------------------------------
// Used by SPFX modules to specify their valid options and initial corners. Use ID 1000.
//----------------------------------------------------------------------------------------
type 'Fopt' {
byte; // Valid corners mask
byte; // Initial corners
byte No = 0, Yes = 1; // Has custom parms, corners in pairs, time invariant
byte No = 0, Yes = 1; // Exclusive?
byte No = 0, Yes = 1; // Reversible?
byte No = 0, Yes = 1; // Has edges?
byte No = 0, Yes = 1; // Has start point?
byte No = 0, Yes = 1; // Has end point?
};
//----------------------------------------------------------------------------------------
// Use these bit values to set the first and second bytes of an Fopt resource.
//----------------------------------------------------------------------------------------
#define bitTop 0x01 // Sides
#define bitRight 0x02
#define bitBottom 0x04
#define bitLeft 0x08
#define bitUpperRight 0x10 // Corners
#define bitLowerRight 0x20
#define bitLowerLeft 0x40
#define bitUpperLeft 0x80
//----------------------------------------------------------------------------------------
// Use these bit values to set the third byte of an Fopt resource.
//----------------------------------------------------------------------------------------
#define bitPairs 0x01 // Set if opposite corners always turn on together
#define bitCustom 0x02 // Set if this effect can do a custom settings dialog
#define bitInvariant 0x04 // Set if this effect does not vary over time
#define bitNo1stCall 0x08 // Set if bitCustom SPFX doesn't want initial esSetup call
#define bitUsesSource 0x20 // Set if esSetup message uses the callback
//----------------------------------------------------------------------------------------
// Used by SPFX modules to tell Premiere how to map a transition to one of the standard
// SMPTE 19. Valid values are in PremiereInterface.h.
//----------------------------------------------------------------------------------------
type 'FXDF' {
longint;
};
//----------------------------------------------------------------------------------------
// Use this resource to make new VFlt modules based on the standard Photoshop 3x3 convol-
// ution kernel. See the Find Edges filter for an example. Use ID 1000.
//----------------------------------------------------------------------------------------
type 'KRNL' {
integer; // 9 values for 3 x 3 convolution kernel
integer;
integer;
integer;
integer;
integer;
integer;
integer;
integer;
integer; // Value to add to the sum
integer; // Divisor
};
//----------------------------------------------------------------------------------------
// Descriptor for allowing filters to animate over time. A structure of this type can be
// added to a 'VFlt', an 'AFlt', or a PhotoShop filter to describe the data structure of
// its data blob. Specify pdOpaque for any non-scalar data in the record, or data that you
// don't want Premiere to interpolate for you. Make the FltD describe all the bytes in the
// data blob. Use ID 1000.
//----------------------------------------------------------------------------------------
type 'FltD' {
array {
integer // Specifies the type of the data
pdOpaque = 0, // Opaque - don't interpolate this
pdChar = 1, // Interpolate as signed byte
pdShort = 2, // Interpolate as signed short
pdLong = 3, // Interpolate as signed long
pdUnsignedChar = 4, // Interpolate as unsigned byte
pdUnsignedShort = 5, // Interpolate as unsigned short
pdUnsignedLong = 6, // Interpolate as unsigned long
pdExtended = 7, // Interpolate as an extended
pdDouble = 8, // Interpolate as a double
pdFloat = 9; // Interpolate as a float
integer; // Count of bytes to skip with pdOpaque, 0 otherwise.
};
};
//----------------------------------------------------------------------------------------
// Used by ExpD modules to inform Premiere about their capabilities. Use ID 1000.
//----------------------------------------------------------------------------------------
type 'FLAG' {
integer; // Capability flags
};
#define bitCanDoVideo 0x8000 // This module can export video clips
#define bitCanDoAudio 0x4000 // This module can export audio clips